-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: randomize all layer types #252
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #252 +/- ##
==========================================
+ Coverage 92.11% 92.12% +0.01%
==========================================
Files 55 55
Lines 2345 2350 +5
==========================================
+ Hits 2160 2165 +5
Misses 185 185 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi @aski02. Thanks for your work. I have two major comments:
- The tests are only checking if parameters have been changed after randomization. Could we add tests that do inference on a batch of random data and see if the model output NaNs? That was the main reason we limited randomization to Linear layers previously.
- As far as I remember, the current approach didn't work for BatchNorm layers. Could we add tests for them as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great work @aski02, I have added some comments :)
@@ -67,17 +69,25 @@ def test_randomization_metric( | |||
tmp_path, | |||
request, | |||
): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add some additional (tiny) architectures to conftest.py, and add a couple of parameterizations (extra items in the parametrization list) with these architectures? Maybe the easiest would be to create those tiny architectures manually, and not train them.
References #18.